import { fileURLToPath, URL } from 'node:url'

import { defineConfig, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'
import vueDevTools from 'vite-plugin-vue-devtools'

// https://vite.dev/config/
// export default defineConfig({
//   plugins: [
//     vue(),
//     vueJsx(),
//     vueDevTools(),
//   ],
//   resolve: {
//     alias: {
//       '@': fileURLToPath(new URL('./src', import.meta.url))
//     },
//   },
//   build: {
//     target: 'es2020'
//   },
//   server: {
//     proxy: {
//       // 简单代理示例
//       '/api': {
//         target: 'http://localhost:8080',
//         changeOrigin: true,
//         rewrite: (path) => path.replace(/^\/api/, '')
//       }
//     }
//   }
// })

export default defineConfig(({ mode }) => {
  const env = loadEnv(mode, process.cwd(), 'VITE_')
  console.log(env)
  return {
    plugins: [vue(), vueJsx(), vueDevTools()],
    resolve: {
      alias: {
        '@': fileURLToPath(new URL('./src', import.meta.url)),
      },
    },
    // build: {
    //   target: 'es2020'
    // },

    server: {
      proxy: {
        '/api': {
          target: env.VITE_PROXY_TARGET_ADDRESS,
          changeOrigin: true,
          secure: false, // 若为 HTTPS 需关闭证书验证（开发环境）
          cookieDomainRewrite: '', // 重写 Cookie 域名（空字符串表示当前域名）
          rewrite: (path) => path.replace(/^\/api/, ''),
        },
      },
    },
  }
})
